#include "../sylar/log.h"
#include "../sylar/util.h"
#include "../sylar/singleton.h"

int main() {
    SYLAR_LOG_INIT(); // 修正初始化宏

    // 检查单例是否初始化成功（调试用）
    auto loggerMgr = sylar::LoggerManager::GetInstance();
    if (!loggerMgr) {
        std::cerr << "LoggerManager单例初始化失败!" << std::endl;
        return 1;
    }

    // 检查日志器指针是否有效（调试用）
    if (!loggerMgr->getDebugLogger()) {
        std::cerr << "debug日志器为空!" << std::endl;
        return 1;
    }

    // 使用格式化日志
    SYLAR_LOG_D("调试日志: %d + %d = %d", 1, 2, 3);
    SYLAR_LOG_I("信息日志: %s", "初始化完成");
    
    // // 使用流式日志
    SYLAR_LOG_W_STREAM() << "警告日志: 内存使用率过高";
    SYLAR_LOG_E_STREAM() << "错误日志: 文件读取失败";
    SYLAR_LOG_F_STREAM() << "致命日志: 数据库连接断开";

    return 0;
}

